YES(O(1),O(n^1))

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(n^1)).

Strict Trs:
  { app(nil(), YS) -> YS
  , app(cons(X), YS) -> cons(X)
  , from(X) -> cons(X)
  , zWadr(XS, nil()) -> nil()
  , zWadr(nil(), YS) -> nil()
  , zWadr(cons(X), cons(Y)) -> cons(app(Y, cons(X)))
  , prefix(L) -> cons(nil()) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

We use the processor 'Small Polynomial Path Order (PS,1-bounded)'
to orient following rules strictly.

Trs:
  { app(nil(), YS) -> YS
  , app(cons(X), YS) -> cons(X)
  , from(X) -> cons(X)
  , zWadr(XS, nil()) -> nil()
  , zWadr(nil(), YS) -> nil()
  , zWadr(cons(X), cons(Y)) -> cons(app(Y, cons(X)))
  , prefix(L) -> cons(nil()) }

The induced complexity on above rules (modulo remaining rules) is
YES(?,O(n^1)) . These rules are moved into the corresponding weak
component(s).

Sub-proof:
----------
  The input was oriented with the instance of 'Small Polynomial Path
  Order (PS,1-bounded)' as induced by the safe mapping
  
   safe(app) = {1, 2}, safe(nil) = {}, safe(cons) = {1},
   safe(from) = {}, safe(zWadr) = {}, safe(prefix) = {1}
  
  and precedence
  
   app ~ zWadr, from ~ prefix .
  
  Following symbols are considered recursive:
  
   {app, zWadr}
  
  The recursion depth is 1.
  
  For your convenience, here are the satisfied ordering constraints:
  
                app(; nil(),  YS) > YS                          
                                                                
            app(; cons(; X),  YS) > cons(; X)                   
                                                                
                         from(X;) > cons(; X)                   
                                                                
               zWadr(XS,  nil();) > nil()                       
                                                                
               zWadr(nil(),  YS;) > nil()                       
                                                                
    zWadr(cons(; X),  cons(; Y);) > cons(; app(; Y,  cons(; X)))
                                                                
                      prefix(; L) > cons(; nil())               
                                                                

We return to the main proof.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Weak Trs:
  { app(nil(), YS) -> YS
  , app(cons(X), YS) -> cons(X)
  , from(X) -> cons(X)
  , zWadr(XS, nil()) -> nil()
  , zWadr(nil(), YS) -> nil()
  , zWadr(cons(X), cons(Y)) -> cons(app(Y, cons(X)))
  , prefix(L) -> cons(nil()) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

Empty rules are trivially bounded

Hurray, we answered YES(O(1),O(n^1))